第6章 自分のドメイン名を管理する
ドメインのゾーンの分割
https://gyazo.com/d60e941989deaa8104c3c9853d8d0f94
権威サーバーの可用性
可用性(Availability)とは、システムを障害(機器やパーツの故障・災害・アクシデントなど)で停止させることなく稼働し続けること、またはその指標のこと
冗長化して可用性を高めることが推奨される
ゾーン転送
コピー元となるプライマリサーバーからコピー先になるセカンダリサーバーへのデータ転送のこと
ゾーン転送によってプライマリサーバーとセカンダリサーバーは同じゾーンデータを共有する
全てを送るAXFRと差分だけ送るIXFR
データ量が多くなると時間がかかるので基本的にはIXFRを推奨
DNS NOTIFY
プライマリサーバーでゾーンデータの更新があるとセカンダリサーバーに更新があったことを伝える
この仕組みをDNS NOTIFYという
DNS NOTIFYを送るセカンダリサーバーのリストをプライマリサーバーは持っている(設定しておく、もしくは自動更新)
セカンダリサーバーがDNS NOTIFYを受け取ると、、、
プライマリサーバーに対して該当するゾーンのSOAリソースレコードを問い合わせる
得られたSOAリソースレコードのSERIA Lの値を比較して、自分の持っているSERIA L値より大きかったら最新のデータを要求する(差分が確かにあることを確認している)
DNS、知れば知るほど頭いい。。。
冗長化について
プライマリサーバーをゾーン転送のコピー元として問い合わせを受けない運用もある
プライマリサーバーとセカンダリサーバーは異なる場所、異なるネットワークで管理する(耐障害性向上)
権威サーバーが応答する情報について
問い合わせに対してリソースレコードを返している
https://gyazo.com/6a3e2d6ad5345b7b60da32692fc758b0
リソースレコードのルール
TTLとクラスは省略可能
同じドメイン名に複数のリソースレコードを設定する場合、2行目以降はドメイン名を省略できる
SOA(Start Of Authority)リソースレコード
ゾーンそのものに関する情報を設定する
ドメインは.jpがルートだったけど、今度はexample.jpをゾーン頂点という
委任により分割されたゾーンの境目をゾーンカットという
code:ns
testdomain.work. ドメイン名
600 TTL(省略可能)
IN クラス
SOA タイプ
dns1.nic.work. HNAME=プライマリサーバーのホスト名
hostmaster.nominet.org.uk. RNAME=ゾーンの管理者のメールアドレス
2100908821 SERIAL=セカンダリサーバーが情報更新に使うデータ
900 REFRESH=ゾーンデータの更新を自動的に始めるまでの時間(DNS NOTIFYによる通知を受けなくても更新が実行される)
300 RETRYーゾーンデータの更新が失敗した際に再度更新を試みるまでの時間
2419200 EXPIRE=更新の失敗が続く場合に持っているゾーンデータを期限切れにするまでの時間
3600 MINIMUM=ネガティブキャッシュを保持してよい時間
ネガティブキャッシュのほじはMINIMUMとTTLの短い方が優先される
NSリソースレコード
委任に関する情報を設定する
委任元のNSレコードには委任先のNSレコードも一緒に登録する
https://gyazo.com/d7fd1de33e7195282e5c1c1308fdc2e3
ゾーンを管理するサーバーが複数ある場合は列挙するが順番はDNSの動作に影響しない
必要に応じて権威サーバーのIPアドレスをAリソースレコードで設定する
Aリソースレコード(webサイトを公開する時)
ドメイン名に対してIPアドレスを設定する
MXリソースレコード(メールアドレスを使えるようにする時)
メールの配送先のメールサーバーのホスト名の一覧を設定する
こちらは優先順位をつけて設定する
メールサーバーの優先順位が符号なしの数値で設定される
リストの中で最も小さい値のメールサーバーから順にメールの配送を試みる
CNAME(Canonical Name)リソースレコード
外部のサービスを自社のドメイン名で利用する、などの場合ドメイン名の正式名称をCNAMEリソースレコードで指定する
正式名称を元に名前解決を実行する
TXTリソースレコード
任意の文字列を設定することができる
なりすましメール対策のための送信ドメイン認証で使う情報の設定
単純に会社情報の登録などにも使える
いくつかのリソースレコードがひとまとめにされたものをリソースレコードセット(RRset)という
リソースレコードセットは必ずひとまとめの集合として扱われる
各リソースレコードの並び順は固定されていない
https://gyazo.com/99d3e2384dbb67be4f99720dacb6a0cf
ゾーンファイルの書き方はRFCで定められている
共通の書式が使える
; セミコロンでコメントを記述できる
1行が長くなる場合は()を使って継続行を記述できる